package com.lizard.schedule.net.http.response.bean;

import com.lizard.schedule.net.http.request.bean.ScheduleSync.ScheduleSyncItem;
import com.lizard.schedule.net.http.response.bean.base.BaseResponse;

import java.util.List;

/**
 * 计划同步响应
 */
public class ScheduleSyncResponse extends BaseResponse {

    /**
     * 客户端需同步(server有返回更新的数据)
     * 本地不管有没更新数据提交给server，只要server的pversion大于本地，server返回这个值
     */
    public final static int OPER_RESULT_NEED_SYNC = 1;

    /**
     * 提交成功(本地的修改提交给server更新成功)
     * 本地有更新的数据提交给server且pversion和server相同时,server更新数据后返回这个值
     */
    public final static int OPER_RESULT_SUBMIT_SUCCESS = 2;

    /**
     * 无提交且无需客户端更新(本地既没有修改，server也没有更新的数据)
     * 本地无任何数据提交并且pversion和server相同时，server返回这个值
     */
    public final static int OPER_RESULT_NEWEST = 3;

    /**
     * 服务端最新的计划版本号
     */
    private int pversion;

    /**
     * 服务端告知客户端操作：1.客户端需同步、2.提交成功、3.无提交且无需客户端更新
     */
    private int operResult;

    /**
     * 当服务器最新版本号高于客户端时返回的计划列表
     */
    private List<ScheduleSyncItem> list;

    public int getPversion() {
        return pversion;
    }

    public int getOperResult() {
        return operResult;
    }

    public void setOperResult(int operResult) {
        this.operResult = operResult;
    }

    public void setPversion(int pversion) {
        this.pversion = pversion;
    }

    public List<ScheduleSyncItem> getList() {
        return list;
    }

    public void setList(List<ScheduleSyncItem> list) {
        this.list = list;
    }
}
